Kinetic Algorithms Via Self-adjusting Computation

نویسندگان

  • Umut A. Acar
  • Guy E. Blelloch
  • Kanat Tangwongsan
  • Jorge L. Vittes
چکیده

Define a static algorithm to be an algorithm that computes some combinatorial property of its input consisting of static, i.e., non-moving, objects. In this paper, we describe a technique for syntactically transforming static algorithms into kinetic algorithms, which compute the statically computed property under motion, à la kinetic data structures. Based on the properties of the transformation technique, we give an algorithm for performing robust motion simulations with fixed-precision floating-point arithmetic. To evaluate the practical effectiveness of the approach, we implement a library for performing the transformation, transform a number of algorithms and give a detailed experimental evaluation. The results show that the technique makes it easy to implement robust kinetic algorithms and delivers good performance in practice.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Self-Adjusting Programming

This papers proposes techniques for writing self-adjusting programs that can adjust to any change to their data (e.g., inputs, decisions made during the computation) etc. We show that the techniques are efficient by considering a number of applications including several sorting algorithms, and the Graham Scan, and the quick hull algorithm for computing convex hulls. We show that the techniques ...

متن کامل

Active Data Structures and Applications to Dynamic and Kinetic Algorithms

We propose and study a novel data-structuring paradigm, called active data structures. Like a time machine, active data structures allow changes to occur not only in the present but at any point in time—including the past. Unlike most time machines, where changes to the past are incorporated and propagated automatically by magic, active data structures systematically communicate with the affect...

متن کامل

Robust Kinetic Convex Hulls in 3D

Kinetic data structures provide a framework for computing combinatorial properties of continuously moving objects. Although kinetic data structures for many problems have been proposed, some difficulties remain in devising and implementing them, especially robustly. One set of difficulties stems from the required update mechanisms used for processing certificate failures—devising efficient upda...

متن کامل

A Consistent Semantics of Self-adjusting Computation

This paper presents a semantics of self-adjusting computation and proves that the semantics are correct and consistent. The semantics integrate change propagation with the classic idea of memoization to enable reuse of computations under mutation to memory. During evaluation, reuse of a computation via memoization triggers a change propagation that adjusts the reused computation to reflect the ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006